\hypertarget{class_main_frame}{\section{Main\-Frame Class Reference}
\label{class_main_frame}\index{Main\-Frame@{Main\-Frame}}
}


{\ttfamily \#include $<$Main\-Frame.\-h$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_main_frame_acebf0a6c4924b2b84ab24655a6baf0cd}{Main\-Frame} (void)
\item 
\hyperlink{class_main_frame_afbebb93bc23a83a91e6625b58af3fe96}{$\sim$\-Main\-Frame} (void)
\item 
void \hyperlink{class_main_frame_ac03a74c1c62204921d62df2542491bea}{game\-Loop} ()
\end{DoxyCompactItemize}
\subsection*{Static Public Attributes}
\begin{DoxyCompactItemize}
\item 
static const int \hyperlink{class_main_frame_a8eab35ca135478c55843b8721f207430}{W\-I\-D\-T\-H} = 800
\item 
static const int \hyperlink{class_main_frame_aafdd9b7cec21101f1796ce80ea142690}{H\-E\-I\-G\-H\-T} = 600
\item 
static const char $\ast$ \hyperlink{class_main_frame_ab9561d6e87df6ac39aa0cfcc4a867531}{T\-I\-T\-L\-E} = \char`\"{}Axe\-Engine V-\/1.\-0\char`\"{}
\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
long \hyperlink{class_main_frame_aa97eff29a9bb9917e9a71e83abc3340e}{get\-Time} ()
\item 
void \hyperlink{class_main_frame_aa67fa83c6351687a66ae7005f520ee4f}{destroy} ()
\item 
void \hyperlink{class_main_frame_a332843a5560c9fc96c778f1b27d1fbac}{stop\-Loop} ()
\item 
void \hyperlink{class_main_frame_a028ad2c4101539e141ad89224cb3f13b}{update} ()
\item 
void \hyperlink{class_main_frame_a3f0c8d90a138e2d8d19e427bad9b2901}{render} (float interpolation)
\item 
void \hyperlink{class_main_frame_aa901a560614cb5a40e58ac3c92b1de9f}{handle\-Input} ()
\item 
void \hyperlink{class_main_frame_ab91a6dfc370957f2f2556d4c4ba27a83}{change\-State} (\hyperlink{class_state_machine}{State\-Machine} $\ast$level)
\item 
void \hyperlink{class_main_frame_a6cebc53540f7c8762a1a42499502fbef}{init} ()
\item 
void \hyperlink{class_main_frame_ad485b82d72f04fdebebbc1f36c7b991d}{init\-With\-G\-L\-F\-W} ()
\item 
void \hyperlink{class_main_frame_a162e5daada4da6b4808a6dd2069267a1}{init\-Glew} ()
\end{DoxyCompactItemize}
\subsection*{Static Private Member Functions}
\begin{DoxyCompactItemize}
\item 
static void \hyperlink{class_main_frame_a35d8811da79dc3304a6f796f9b9f20df}{V\-Sync\-Off} ()
\item 
static void \hyperlink{class_main_frame_a71a2cd00e88cf91c5f0ec0f1938f7ef5}{V\-Sync\-On} ()
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
long \hyperlink{class_main_frame_a95948667926bf20ed81d1b3d3aad1c09}{last\-Frame}
\item 
bool \hyperlink{class_main_frame_a49fe003d264bebb7e75a60c579721e1c}{running}
\item 
G\-L\-F\-Wwindow $\ast$ \hyperlink{class_main_frame_ae4a233ae7dc1ee6df2290f9d3ad77ea3}{window}
\item 
\hyperlink{class_state_machine}{State\-Machine} $\ast$ \hyperlink{class_main_frame_a72f6446bd28ba58516773f85b514e150}{current\-State}
\item 
\hyperlink{class_state_manager}{State\-Manager} $\ast$ \hyperlink{class_main_frame_abb164a92af7f27d01bb7a0e3565c34c7}{manager}
\end{DoxyCompactItemize}
\subsection*{Static Private Attributes}
\begin{DoxyCompactItemize}
\item 
static const double \hyperlink{class_main_frame_af30a73c4bec049446047ccb1d026bb02}{F\-P\-S} = 60
\item 
static int \hyperlink{class_main_frame_a32d29dd04482e55203e26bbdd63fb97f}{timer} = 0
\end{DoxyCompactItemize}


\subsection{Detailed Description}


Definition at line 19 of file Main\-Frame.\-h.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_main_frame_acebf0a6c4924b2b84ab24655a6baf0cd}{\index{Main\-Frame@{Main\-Frame}!Main\-Frame@{Main\-Frame}}
\index{Main\-Frame@{Main\-Frame}!MainFrame@{Main\-Frame}}
\subsubsection[{Main\-Frame}]{\setlength{\rightskip}{0pt plus 5cm}Main\-Frame\-::\-Main\-Frame (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{class_main_frame_acebf0a6c4924b2b84ab24655a6baf0cd}


Definition at line 24 of file Main\-Frame.\-cpp.



References current\-State, last\-Frame, manager, N\-U\-L\-L, running, and window.

\hypertarget{class_main_frame_afbebb93bc23a83a91e6625b58af3fe96}{\index{Main\-Frame@{Main\-Frame}!$\sim$\-Main\-Frame@{$\sim$\-Main\-Frame}}
\index{$\sim$\-Main\-Frame@{$\sim$\-Main\-Frame}!MainFrame@{Main\-Frame}}
\subsubsection[{$\sim$\-Main\-Frame}]{\setlength{\rightskip}{0pt plus 5cm}Main\-Frame\-::$\sim$\-Main\-Frame (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{class_main_frame_afbebb93bc23a83a91e6625b58af3fe96}


Definition at line 34 of file Main\-Frame.\-cpp.



\subsection{Member Function Documentation}
\hypertarget{class_main_frame_ab91a6dfc370957f2f2556d4c4ba27a83}{\index{Main\-Frame@{Main\-Frame}!change\-State@{change\-State}}
\index{change\-State@{change\-State}!MainFrame@{Main\-Frame}}
\subsubsection[{change\-State}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::change\-State (
\begin{DoxyParamCaption}
\item[{{\bf State\-Machine} $\ast$}]{level}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_ab91a6dfc370957f2f2556d4c4ba27a83}


Definition at line 180 of file Main\-Frame.\-cpp.



References current\-State.



Referenced by update().

\hypertarget{class_main_frame_aa67fa83c6351687a66ae7005f520ee4f}{\index{Main\-Frame@{Main\-Frame}!destroy@{destroy}}
\index{destroy@{destroy}!MainFrame@{Main\-Frame}}
\subsubsection[{destroy}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::destroy (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_aa67fa83c6351687a66ae7005f520ee4f}


Definition at line 150 of file Main\-Frame.\-cpp.



Referenced by game\-Loop().

\hypertarget{class_main_frame_ac03a74c1c62204921d62df2542491bea}{\index{Main\-Frame@{Main\-Frame}!game\-Loop@{game\-Loop}}
\index{game\-Loop@{game\-Loop}!MainFrame@{Main\-Frame}}
\subsubsection[{game\-Loop}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::game\-Loop (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_main_frame_ac03a74c1c62204921d62df2542491bea}


Definition at line 38 of file Main\-Frame.\-cpp.



References destroy(), F\-P\-S, get\-Time(), handle\-Input(), init(), render(), running, timer, update(), and window.

\hypertarget{class_main_frame_aa97eff29a9bb9917e9a71e83abc3340e}{\index{Main\-Frame@{Main\-Frame}!get\-Time@{get\-Time}}
\index{get\-Time@{get\-Time}!MainFrame@{Main\-Frame}}
\subsubsection[{get\-Time}]{\setlength{\rightskip}{0pt plus 5cm}long Main\-Frame\-::get\-Time (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_aa97eff29a9bb9917e9a71e83abc3340e}


Definition at line 93 of file Main\-Frame.\-cpp.



Referenced by game\-Loop().

\hypertarget{class_main_frame_aa901a560614cb5a40e58ac3c92b1de9f}{\index{Main\-Frame@{Main\-Frame}!handle\-Input@{handle\-Input}}
\index{handle\-Input@{handle\-Input}!MainFrame@{Main\-Frame}}
\subsubsection[{handle\-Input}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::handle\-Input (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_aa901a560614cb5a40e58ac3c92b1de9f}


Definition at line 174 of file Main\-Frame.\-cpp.



References current\-State, State\-Machine\-::handle\-Input(), and window.



Referenced by game\-Loop().

\hypertarget{class_main_frame_a6cebc53540f7c8762a1a42499502fbef}{\index{Main\-Frame@{Main\-Frame}!init@{init}}
\index{init@{init}!MainFrame@{Main\-Frame}}
\subsubsection[{init}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::init (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a6cebc53540f7c8762a1a42499502fbef}


Definition at line 101 of file Main\-Frame.\-cpp.



References current\-State, State\-Manager\-::initialise\-State(), init\-With\-G\-L\-F\-W(), and manager.



Referenced by game\-Loop().

\hypertarget{class_main_frame_a162e5daada4da6b4808a6dd2069267a1}{\index{Main\-Frame@{Main\-Frame}!init\-Glew@{init\-Glew}}
\index{init\-Glew@{init\-Glew}!MainFrame@{Main\-Frame}}
\subsubsection[{init\-Glew}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::init\-Glew (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a162e5daada4da6b4808a6dd2069267a1}


Definition at line 141 of file Main\-Frame.\-cpp.



Referenced by init\-With\-G\-L\-F\-W().

\hypertarget{class_main_frame_ad485b82d72f04fdebebbc1f36c7b991d}{\index{Main\-Frame@{Main\-Frame}!init\-With\-G\-L\-F\-W@{init\-With\-G\-L\-F\-W}}
\index{init\-With\-G\-L\-F\-W@{init\-With\-G\-L\-F\-W}!MainFrame@{Main\-Frame}}
\subsubsection[{init\-With\-G\-L\-F\-W}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::init\-With\-G\-L\-F\-W (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_ad485b82d72f04fdebebbc1f36c7b991d}


Definition at line 112 of file Main\-Frame.\-cpp.



References error\-\_\-callback(), H\-E\-I\-G\-H\-T, init\-Glew(), N\-U\-L\-L, T\-I\-T\-L\-E, W\-I\-D\-T\-H, and window.



Referenced by init().

\hypertarget{class_main_frame_a3f0c8d90a138e2d8d19e427bad9b2901}{\index{Main\-Frame@{Main\-Frame}!render@{render}}
\index{render@{render}!MainFrame@{Main\-Frame}}
\subsubsection[{render}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::render (
\begin{DoxyParamCaption}
\item[{float}]{interpolation}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a3f0c8d90a138e2d8d19e427bad9b2901}


Definition at line 154 of file Main\-Frame.\-cpp.



References current\-State, State\-Machine\-::render\-Game(), and window.



Referenced by game\-Loop().

\hypertarget{class_main_frame_a332843a5560c9fc96c778f1b27d1fbac}{\index{Main\-Frame@{Main\-Frame}!stop\-Loop@{stop\-Loop}}
\index{stop\-Loop@{stop\-Loop}!MainFrame@{Main\-Frame}}
\subsubsection[{stop\-Loop}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::stop\-Loop (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a332843a5560c9fc96c778f1b27d1fbac}


Definition at line 97 of file Main\-Frame.\-cpp.



References running.

\hypertarget{class_main_frame_a028ad2c4101539e141ad89224cb3f13b}{\index{Main\-Frame@{Main\-Frame}!update@{update}}
\index{update@{update}!MainFrame@{Main\-Frame}}
\subsubsection[{update}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::update (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a028ad2c4101539e141ad89224cb3f13b}


Definition at line 166 of file Main\-Frame.\-cpp.



References State\-Manager\-::call\-States(), change\-State(), current\-State, State\-Machine\-::get\-Key\-Code(), manager, State\-Machine\-::state\-Changer(), timer, and State\-Machine\-::update\-Game().



Referenced by game\-Loop().

\hypertarget{class_main_frame_a35d8811da79dc3304a6f796f9b9f20df}{\index{Main\-Frame@{Main\-Frame}!V\-Sync\-Off@{V\-Sync\-Off}}
\index{V\-Sync\-Off@{V\-Sync\-Off}!MainFrame@{Main\-Frame}}
\subsubsection[{V\-Sync\-Off}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::\-V\-Sync\-Off (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [private]}}}\label{class_main_frame_a35d8811da79dc3304a6f796f9b9f20df}


Definition at line 188 of file Main\-Frame.\-cpp.

\hypertarget{class_main_frame_a71a2cd00e88cf91c5f0ec0f1938f7ef5}{\index{Main\-Frame@{Main\-Frame}!V\-Sync\-On@{V\-Sync\-On}}
\index{V\-Sync\-On@{V\-Sync\-On}!MainFrame@{Main\-Frame}}
\subsubsection[{V\-Sync\-On}]{\setlength{\rightskip}{0pt plus 5cm}void Main\-Frame\-::\-V\-Sync\-On (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [private]}}}\label{class_main_frame_a71a2cd00e88cf91c5f0ec0f1938f7ef5}


Definition at line 184 of file Main\-Frame.\-cpp.



\subsection{Member Data Documentation}
\hypertarget{class_main_frame_a72f6446bd28ba58516773f85b514e150}{\index{Main\-Frame@{Main\-Frame}!current\-State@{current\-State}}
\index{current\-State@{current\-State}!MainFrame@{Main\-Frame}}
\subsubsection[{current\-State}]{\setlength{\rightskip}{0pt plus 5cm}{\bf State\-Machine}$\ast$ Main\-Frame\-::current\-State\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a72f6446bd28ba58516773f85b514e150}


Definition at line 38 of file Main\-Frame.\-h.



Referenced by change\-State(), handle\-Input(), init(), Main\-Frame(), render(), and update().

\hypertarget{class_main_frame_af30a73c4bec049446047ccb1d026bb02}{\index{Main\-Frame@{Main\-Frame}!F\-P\-S@{F\-P\-S}}
\index{F\-P\-S@{F\-P\-S}!MainFrame@{Main\-Frame}}
\subsubsection[{F\-P\-S}]{\setlength{\rightskip}{0pt plus 5cm}const double Main\-Frame\-::\-F\-P\-S = 60\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [private]}}}\label{class_main_frame_af30a73c4bec049446047ccb1d026bb02}


Definition at line 35 of file Main\-Frame.\-h.



Referenced by game\-Loop().

\hypertarget{class_main_frame_aafdd9b7cec21101f1796ce80ea142690}{\index{Main\-Frame@{Main\-Frame}!H\-E\-I\-G\-H\-T@{H\-E\-I\-G\-H\-T}}
\index{H\-E\-I\-G\-H\-T@{H\-E\-I\-G\-H\-T}!MainFrame@{Main\-Frame}}
\subsubsection[{H\-E\-I\-G\-H\-T}]{\setlength{\rightskip}{0pt plus 5cm}const int Main\-Frame\-::\-H\-E\-I\-G\-H\-T = 600\hspace{0.3cm}{\ttfamily [static]}}}\label{class_main_frame_aafdd9b7cec21101f1796ce80ea142690}


Definition at line 23 of file Main\-Frame.\-h.



Referenced by init\-With\-G\-L\-F\-W().

\hypertarget{class_main_frame_a95948667926bf20ed81d1b3d3aad1c09}{\index{Main\-Frame@{Main\-Frame}!last\-Frame@{last\-Frame}}
\index{last\-Frame@{last\-Frame}!MainFrame@{Main\-Frame}}
\subsubsection[{last\-Frame}]{\setlength{\rightskip}{0pt plus 5cm}long Main\-Frame\-::last\-Frame\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a95948667926bf20ed81d1b3d3aad1c09}


Definition at line 31 of file Main\-Frame.\-h.



Referenced by Main\-Frame().

\hypertarget{class_main_frame_abb164a92af7f27d01bb7a0e3565c34c7}{\index{Main\-Frame@{Main\-Frame}!manager@{manager}}
\index{manager@{manager}!MainFrame@{Main\-Frame}}
\subsubsection[{manager}]{\setlength{\rightskip}{0pt plus 5cm}{\bf State\-Manager}$\ast$ Main\-Frame\-::manager\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_abb164a92af7f27d01bb7a0e3565c34c7}


Definition at line 39 of file Main\-Frame.\-h.



Referenced by init(), Main\-Frame(), and update().

\hypertarget{class_main_frame_a49fe003d264bebb7e75a60c579721e1c}{\index{Main\-Frame@{Main\-Frame}!running@{running}}
\index{running@{running}!MainFrame@{Main\-Frame}}
\subsubsection[{running}]{\setlength{\rightskip}{0pt plus 5cm}bool Main\-Frame\-::running\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_a49fe003d264bebb7e75a60c579721e1c}


Definition at line 32 of file Main\-Frame.\-h.



Referenced by game\-Loop(), Main\-Frame(), and stop\-Loop().

\hypertarget{class_main_frame_a32d29dd04482e55203e26bbdd63fb97f}{\index{Main\-Frame@{Main\-Frame}!timer@{timer}}
\index{timer@{timer}!MainFrame@{Main\-Frame}}
\subsubsection[{timer}]{\setlength{\rightskip}{0pt plus 5cm}int Main\-Frame\-::timer = 0\hspace{0.3cm}{\ttfamily [static]}, {\ttfamily [private]}}}\label{class_main_frame_a32d29dd04482e55203e26bbdd63fb97f}


Definition at line 36 of file Main\-Frame.\-h.



Referenced by game\-Loop(), and update().

\hypertarget{class_main_frame_ab9561d6e87df6ac39aa0cfcc4a867531}{\index{Main\-Frame@{Main\-Frame}!T\-I\-T\-L\-E@{T\-I\-T\-L\-E}}
\index{T\-I\-T\-L\-E@{T\-I\-T\-L\-E}!MainFrame@{Main\-Frame}}
\subsubsection[{T\-I\-T\-L\-E}]{\setlength{\rightskip}{0pt plus 5cm}const char $\ast$ Main\-Frame\-::\-T\-I\-T\-L\-E = \char`\"{}Axe\-Engine V-\/1.\-0\char`\"{}\hspace{0.3cm}{\ttfamily [static]}}}\label{class_main_frame_ab9561d6e87df6ac39aa0cfcc4a867531}


Definition at line 24 of file Main\-Frame.\-h.



Referenced by init\-With\-G\-L\-F\-W().

\hypertarget{class_main_frame_a8eab35ca135478c55843b8721f207430}{\index{Main\-Frame@{Main\-Frame}!W\-I\-D\-T\-H@{W\-I\-D\-T\-H}}
\index{W\-I\-D\-T\-H@{W\-I\-D\-T\-H}!MainFrame@{Main\-Frame}}
\subsubsection[{W\-I\-D\-T\-H}]{\setlength{\rightskip}{0pt plus 5cm}const int Main\-Frame\-::\-W\-I\-D\-T\-H = 800\hspace{0.3cm}{\ttfamily [static]}}}\label{class_main_frame_a8eab35ca135478c55843b8721f207430}


Definition at line 22 of file Main\-Frame.\-h.



Referenced by init\-With\-G\-L\-F\-W().

\hypertarget{class_main_frame_ae4a233ae7dc1ee6df2290f9d3ad77ea3}{\index{Main\-Frame@{Main\-Frame}!window@{window}}
\index{window@{window}!MainFrame@{Main\-Frame}}
\subsubsection[{window}]{\setlength{\rightskip}{0pt plus 5cm}G\-L\-F\-Wwindow$\ast$ Main\-Frame\-::window\hspace{0.3cm}{\ttfamily [private]}}}\label{class_main_frame_ae4a233ae7dc1ee6df2290f9d3ad77ea3}


Definition at line 33 of file Main\-Frame.\-h.



Referenced by game\-Loop(), handle\-Input(), init\-With\-G\-L\-F\-W(), Main\-Frame(), and render().



The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
C\-:/\-Users/\-Axel/\-Desktop/informatica/\-Projects/\-Workspace C++/\-Game Engine/src/\-Core\-Systems/\hyperlink{_main_frame_8h}{Main\-Frame.\-h}\item 
C\-:/\-Users/\-Axel/\-Desktop/informatica/\-Projects/\-Workspace C++/\-Game Engine/src/\-Core\-Systems/\hyperlink{_main_frame_8cpp}{Main\-Frame.\-cpp}\end{DoxyCompactItemize}
